Data devices such as microprocessors and controllers often share a common bus within an electronic system. The bus interfaces between these devices as a “shared resource,” meaning only one device accesses the bus at any one time; other devices wait for access during use by the transmitting device. Controllers often mediate between the timing and use of the devices on the bus.
When a device with data to transmit waits for access to the bus, a system latency ensues. Moreover, device controllers that mediate between devices create an overhead inefficiency for the system, creating additional latencies. Bus turnaround operations induce additional latency; that is, bus controllers delay future access to the bus following prior bus transmissions to avoid reflections and to optimally drive the bus. By way of example, those skilled in the art appreciate that a bus agent commonly controls and mediates input/output (I/O) by and between many devices on a system bus.
The invention provides systems and methods for simultaneous communication between devices on a common bus. One feature of the invention provides orthogonally coded bus transmission protocols to permit concurrent communications between a plurality of devices on a bus. Other features of the invention will be apparent within the description that follows.